Method for measuring unidirectional transmission characteristics such as packet propagation time, fluctuations in propagation time and results derivable therefrom, in a telecommunications network

ABSTRACT

The present invention is directed to a method for measuring unidirectional transmission properties, such as packet delay (Dnetwork), delay-time fluctuations (tjitter), and results derivable therefrom, in a telecommunications network ( 10 ), such as the Internet, an intranet, or the like. In the telecommunications network, a plurality of switching devices ( 12  through  22 ) and other devices ( 34, 36, 38 ) are interconnected via transmission lines ( 24 ). Between at least two measuring computers ( 26, 28 ), test packets are transmitted from the first measuring computer ( 26 ) via a measurement path ( 32 ) to the second measuring computer ( 28 ). The first measuring computer ( 26 ) records the departure time (t 1 ) of the outgoing test packet. This clock time is transmitted along with the test packet. The second measuring computer ( 28 ) records the arrival time (t 2 ) of the test packet. In a subtraction operation between the departure time from the first measuring computer ( 26 ) and the arrival time in the second measuring computer ( 28 ), the delay time (Dnetwork) of the test packet, the measuring result, is determined. In accordance with the present invention, to determine the measuring result, the two measuring computers ( 26, 28 ) are synchronized in time by satellite systems ( 30 ), for example by a GPS (global positioning system), in that the clock time is continuously transmitted to both measuring computers ( 26, 28 ).

[0001] The present invention is directed to a method for measuringunidirectional transmission properties, such as packet delay, delay-timefluctuations, and results derivable therefrom, in a telecommunicationsnetwork according to the definition of the species in claim 1, as wellas to a device for implementing the method as set forth in claim 14.

[0002] It is known to take measurements of unidirectional transmissionproperties, such as packet delay, delay-time fluctuations, or the like,in a telecommunications network, such as the Internet, an intranet, orthe like, between at least two measuring computers. In this case, a testpacket is transmitted from a first measuring computer to a secondmeasuring computer, the first measuring computer recording the departuretime of the outgoing test packet, and transmitting this clock time alongwith the test packet, and the second measuring computer recording thearrival time of the test packet, and a subtraction operation yieldingthe difference between the departure time from the first measuringcomputer and the arrival time in the second measuring computer, todetermine the delay time of the test packet, the measuring result. Thesecond measuring computer recognizes the departure time from the firstmeasuring computer, from the test packet which contains the informationas a timing mark.

[0003] The timing marks can be obtained using various methods: beforesending the test packet, the measuring computers determine the clocktime from a third computer, via the telecommunications network. Thus,the third computer presets the reference time for the two measuringcomputers.

[0004] Problematic about this method is, however, that time fluctuationsarise due to the difference in the transmission times when the clocktime is communicated to the measuring computers. This makes themeasuring results inaccurate, so that they cannot be used whenconsidering the quality of the unidirectional transmission properties ina telecommunications network.

[0005] Furthermore, the known round-trip measurements in thetelecommunications network, thus when the packet delay is measured fromthe first measuring computer, via the second measuring computer, andback, are also much too imprecise, since a symmetrical connectionbetween the two measuring computers cannot be assumed. For example, theconnection from the first measuring computer to the second measuringcomputer can take a first path, and the connection from the secondmeasuring computer to the first measuring computer, a second path, whichis not equal to the first path. In this respect, information regardingthe packet delays in the context of these measuring methods is alsounusable when considering the unidirectional transmission properties, ifone were to divide the packet delay of the round-trip measurement by twoin order to obtain a unidirectional delay.

[0006] However, a more or less guaranteed transmission rate is requiredwhen implementing new services in the telecommunications network,particularly in the Internet, for example when sending print jobs toprint shops. An upper limit is also required for packet delay anddelay-time fluctuation, e.g., for IP telephony and video conferencing.

[0007] In this context, however, the decisive quality feature is theunidirectional packet delay, the delay fluctuations derivable therefrom,the packet losses, the throughput, and the availability.

[0008] From this, one can then guarantee to the customer, for one ormore of these parameters, maximum values for packet delays, delayfluctuations, and losses, and/or minimum values for the throughput. Inaddition, it must be verifiable that these values are being observed bythe service provider and the customer.

[0009] In this context, the unidirectional packet delay corresponds tothe difference between point in time t₁ when the first bit of a testpacket was sent by a first measuring computer, and point in time t₂,when the last bit of the test packet was received by the secondmeasuring computer. The packet delay D_(network) in a telecommunicationsnetwork thus yields D_(network)=t₂−t₁.

[0010] Unidirectional delay-time fluctuations are understood to be thedifferences between the various delay times of the test packets from afirst measuring computer—source—to the second measuring computer—drain.The delay-time fluctuation is always considered for only onetransmission direction.

[0011] In defining it, the following distinction is also made:

[0012] On the one hand, a pair of test packets is transmitted from onedefined source, or a first measuring point, to a defined drain, or asecond measuring point. The delay-time fluctuation is then thedifference between the measured delay time of the second test packet andthe measured delay time of the first test packet of the transmitted pairof test packets.

[0013] On the other hand, a stream of test packets is transmitted fromone defined source, or a first measuring point, to a defined drain, or asecond measuring point. A packet stream is formed, in this context, bylogically successive test packets,—numbered packets—, which aretransmitted in a fixed sequence. Here, the delay-time fluctuation is thedifference between the measured unidirectional delay time of a testpacket and the measured delay time of the predecessor packet. Generally,it holds that: t_(jitter)=D_(n)−D_(n−1). D_(n) is the unidirectionaldelay time of test packet n, and D¹⁻ is the delay time of packet n−1.t_(jitter) is then the delay-time fluctuation. The occurrence of thedelay-time fluctuation is a direct consequence of different delay timesof the test packets.

[0014] A packet loss is understood to be when the first bit of anindividual test packet, which is sent from a defined source to a defineddrain, does not reach the drain. One also speaks of a packet loss when atest packet arrives at the receiver, but has at least one corrupted bit,or when the delay time of a test packet exceeds a predefined timeperiod, such as 255 seconds.

[0015] In this context, only one transmission direction is considered.The measuring data are recorded in that a received test packet counts as“1”, a packet loss as “0”. The packet loss is measured over a definedtime interval. At the receiver, the delay resulting from the transittime is to be considered in selecting the measuring interval.

[0016] The object of the present invention is to further refine a methodfor measuring unidirectional transmission properties, such as packetdelay, delay-time fluctuations, and results derivable therefrom, in atelecommunications network, in a way that will render possible moreprecise measurements, while avoiding the mentioned disadvantages.

[0017] With respect to the method, this objective is achieved by thecharacterizing features of claim 1, in conjunction with its featuresincluded in the definition of the species, and, with respect to thedevice, by claim 14.

[0018] The realization underlying the present invention is that theproperty of tuning the clock times in the two measuring computers is ofdecisive important for the quality of the measuring result.

[0019] For that reason, for the determination of the measuring result,the present invention provides for the two measuring computers to besynchronized in time by satellite systems, for example by a GPS (globalpositioning system), in that the clock time is continuously transmittedby a plurality of satellites to both measuring computers. This is asimple way to assure that both measuring computers have the same clocktimes, and that the time ascertained, using subtraction, betweendeparture of the test packet and arrival of the test packet, correspondsto the actual packet delay time. Thus, the satellite system acts as atimer for the measuring computers. These timing marks may be generatedwith an error of ±½ microseconds.

[0020] In accordance with one specific embodiment of the presentinvention, the measuring result, thus the difference between the firsttiming mark—clock time when the test packet exits the first measuringcomputer—and the second timing mark—clock time when the test packetarrives at the second measuring computer—is stored in a database. Everyauthorized user may then preferably query the measuring results from thedatabase via the telecommunications network. In this way, it is assuredthat the customers, as well as the telecommunications carriers are ableat any time to query the quality of the unidirectional data transmissionfrom the first measuring computer to the second measuring computer and,if indicated, for example in response to exceedance of preset limitingvalues, take appropriate quality assurance measures.

[0021] To ensure that only authorized users are able to query themeasuring results, an identifier for the authorized user is stored inthe database. Once the identifier is communicated by the authorizeduser, querying of the measuring results from the database is enabled.This makes it possible to simply define predetermined persons who arepermitted to query the measuring results.

[0022] In accordance with another specific embodiment of the presentinvention, the measuring results are transmitted from the secondmeasuring computer via the telecommunications network to the database.In this way, the measuring results are not stored in the measuringcomputer whose measuring performance could be adversely affected as aresult.

[0023] To ascertain delay-time fluctuations, at least two test packetsare sent consecutively from the first measuring computer to the secondmeasuring computer. The difference in the delay times of the two testpackets yields the delay-time fluctuation.

[0024] To obtain a complete picture of the quality of the unidirectionalmeasuring connection from the first measuring computer to the secondmeasuring computer, test packets are continuously transmitted from thefirst measuring computer to the second measuring computer. To ensurethat no measurement corruptions occur because of transient responses ofthe hardware and software, the time interval from departure of the testpackets from the first measuring computer varies.

[0025] The information on at which points in time which measuringresults occur, is important for maintaining the quality standard. Forthat reason, date and clock time information is assigned to themeasuring results and is stored accordingly in the database. In thismanner, the quality characteristic may be checked as a function of time,and, on the basis of this information, appropriate measures may be takento improve quality.

[0026] As was explained above, the departure of the test packet from thefirst measuring computer is ascertained as a function of time upontransmission of the first bit of a test packet, and is sent along to thetest packet as timing mark t₁. The arrival of the test packet at thesecond measuring computer, thus when the last bit of the test packet wasreceived, is recorded by the second measuring computer as second timingmark t₂. Experience has shown, however, that instant t₁, thus theinstant when the first bit is sent by the first measuring computer, isprecisely not this defined instant, but rather the instant when the testpacket is delivered to the protocol software, such as drivers for thenetwork card and TCP/IP stack; and that t₂ is not the instant when thelast bit of the test packet is received by the second measuringcomputer, but rather the instant when the protocol software delivers thetest packet to the measuring program.

[0027] As is the case for every measuring instrument, here, as well, ameasuring error must also be considered. It is caused by random eventsin the operating system, such as process switching times, by thesimultaneous arrival of test packets, etc. Thus, to calculate the actualdelay of a test packet, it follows that: D_(network)=t₁−t₂−D_(soft)−•where (0 ••••_(max)).

[0028] D_(soft) represents the component, which is constituted of thetime periods needed by the protocol software and the operating system onthe transmitting and receiving side of the two measuring computers forprocessing the test packets. This constant component is dependent uponthe hardware and software used. It must be determined for everymeasuring unit and communicated to the measuring program. For thatreason, for every measuring computer, the computer-specific timecomponent required by the software and the operating system of thismeasuring computer to handle the test packet in the measuring computeruntil the departure or arrival time is ascertained, is determined. Thecomputer-specific time component is subtracted from the ascertaineddelay time, and the result corresponds to the true delay time, the truedelay time then forming the measuring result. The remaining measuringerror • is within the range of 0 to •_(max).

[0029] To generate the timing marks, thus the clock time of the arrivalsand departures of the test packets, GPS cards are installed in themeasuring computers. A measuring program is implemented in the measuringcomputers. However, to prevent any degradation of the measuring accuracyof the measuring computers, the measuring program on the measuringcomputers does not have its own operator interface. The measurement dataare not stored locally on the measuring computers, since hard-driveaccesses also influence the processor load and, thus, the measuringaccuracy. The measuring program behaves passively, i.e., the measuringconnections are established, the measurement data are transferred, andthe status of the measuring computers is provided only in response to arequest by a separately provided control computer.

[0030] For that reason, in accordance with another specific embodimentof the present invention, a control computer is provided, which, via thetelecommunications network, controls the measuring computers fordetermining the measuring result, such as establishing the measuringconnections, initiating the transfer of the measuring result to thedatabase, determining the status of the measuring computers, and thelike.

[0031] To ensure that measuring results are not corrupted, no testpackets are recorded during the transmission of data from one measuringcomputer to the control computer.

[0032] To check other quality features, besides the delay time and thedelay-time fluctuations, losses occurring during transmission of thetest packets by the measuring computers are also ascertained and arestored accordingly as measuring results in the database.

[0033] Other advantages, features, and possible applications of thepresent invention for measuring unidirectional transmission properties,such as packet delay, delay-time fluctuations or the like, in atelecommunications network, are derived from the following description,in conjunction with the exemplary embodiment shown in the drawing.

[0034] The present invention is elucidated in the following on the basisof the exemplary embodiment depicted in the drawing. The terms andassigned reference symbols employed in the appended reference symbollist are used in the Specification, the Claims, the Abstract, and in thedrawing.

[0035] In the drawing:

[0036]FIG. 1 schematically shows a telecommunications network having twomeasuring computers for implementing the method according to the presentinvention.

[0037]FIG. 1 schematically depicts a telecommunications network 10,which is composed of a plurality of switching devices 12 through 22,which are interconnected via transmission lines 24.

[0038] Switching device 14 is assigned to a first measuring computer 26,and switching device 18 to a second measuring computer 28. In eachmeasuring computer 26, 28, a measuring program is installed formeasuring unidirectional transmission properties.

[0039] Each measuring computer 26, 28 is connected to a GPS antenna(global positioning system) and provided with a GPS card for processingthe data received via the GPS antenna. Together, the GPS antenna and theGPS card form GPS unit 30.

[0040] Connection 24 between first measuring computer 26, switchingdevice 14, switching device 16, switching device 18, and secondmeasuring computer 28, forms measurement path 32, which is shown with abroken line.

[0041] A control computer 34 is assigned to switching device 12. Controlcomputer 34 cooperates with a database 36.

[0042] Another computer 38, described in the following as a workstation, is assigned to switching device 20 via transmission line 24.

[0043] Telecommunications network 10 is, for example, the Internet.

[0044] The aim of the measuring system is, first of all, to determinethe packet delay from first measuring computer 26 via measurement path32 to second measuring computer 28. It is thus a question of aunidirectional measuring connection, where individual test packets aresent from first measuring computer 26 to second measuring computer 28.

[0045] On measurement path 32, test packets having a constant orexponential time distribution are transmitted to second measuringcomputer 28. In this context, the test packets are sent with the aid ofthe user datagram protocol (UDP). This is a connectionless Internettransport protocol, which is defined by IP. The test packets contain,inter alia, timing marks and sequential numbers.

[0046] To be able to measure the unidirectional delay time withsufficient accuracy, the timing marks are generated by GPS unit 30.Consequently, the timing marks may be generated with an error of ±½microseconds. In this connection, the timing mark is set by firstmeasuring computer 26 at the time of transmission of the first bit of atest packet. This corresponds to point in time t₁.

[0047] In order for GPS units 30 to be able to ascertain the exact time,each GPS unit 30 must receive signals from a plurality of satellites (amaximum of six). If the number of receivable satellites drops for anextended period of time to one, for example due to unfavorablemeteorological conditions, then the internal clock is not synchronized.In this case, first measuring computer 26 interrupts the transmission ofthe test packets and generates an error/status message to this effect tocontrol computer 34.

[0048] As is true of every measuring instrument, this measuring systemmust also be calibrated. In this case, calibration means determining theconstant component D_(soft). For this, each measuring computer 26, 28,following the start of its measuring program, sends test packets to itsown IP address. These test packets propagate through the TCP/IP stacktwice. The ascertained minimal delay time corresponds to twice thetransmission delay through the TCP/IP stack. The value divided by two isthe calibration value for this measuring computer 26, 28. Thus, for aconnection between first measuring computer 26 and second measuringcomputer 28, it follows for D_(soft) that:

D _(soft) =CV _(src) +CV _(dest),

[0049] CV being the calibration value, and src standing for the sourceand, thus, for first measuring computer 26, and dest for the drain and,thus, for second measuring computer 28.

[0050] At this point, the test packet is transmitted via measurementpath 32, thus via transmission line 24, switching exchange 14, switchingexchange 16, and switching exchange 18, to second measuring computer 28.When the last bit of the test packet is received at the second measuringcomputer, the second timing mark is recorded. This corresponds to pointin time t₂. Second timing mark t₂ is generated by second measuringcomputer 28, likewise using a GPS unit 30.

[0051] From t₁ and t₂, at this point taking into consideration acomputer-specific time component D_(soft), packet delay time D_(network)is calculated in accordance with the formulaD_(network)=t₁−t₂−D_(soft)−•, and this value is transmitted as ameasuring result to control computer 34, and is stored in database 36.The results are able to be continuously displayed online via the monitorof control computer 34.

[0052] To be able to ascertain unidirectional delay-time fluctuations,test packets are continuously transmitted from first measuring computer26 to second measuring computer 28 in the manner just described. In thiscontext, the delay-time fluctuation is the difference between themeasured unidirectional delay time of a test packet and the measureddelay time of the preceding packet, so that the following formula isderived: t_(jitter)=D_(n)−D_(n−1), D_(n) being the unidirectional delaytime of test packet n, D_(n−1) being the delay time of packet n−1, andt_(jitter) being the delay-time fluctuation.

[0053] In addition, packet losses may also be ascertained andrepresented via measuring computers 26, 28 and via control computer 34.

[0054] Every authorized user may query the quality of the connectionfrom first measuring computer 26 to second measuring computer 28, forexample, from his/her work station 38. To do so, he/she logs ontodatabase 36 via the Internet, transmits his/her identifier, and, if theidentifier matches, he/she may query the data, such as packet delaytime, delay-time fluctuation, packet losses or the like. In thiscontext, the measuring result in the database includes the creationdate, the name of the first measuring computer, the IP address of thefirst measuring computer, the name of the second measuring computer, theIP address of the second measuring computer, as well as the port number.The measurement data files have the following format:

[0055] Status—time stamp—packet delay—sequential number—packetlength—TOS.

[0056] The status indicates whether the time stamp and the value for thepacket delay are valid. If the status value is unequal to 0, then onlythe values including the sequential number required for the losscalculation, the packet length, and TOS are valid. The time stampindicates the point in time when the test packet was sent by secondmeasuring computer 28 to control computer 34.

[0057] For every measuring connection having an average packet intervalof one second, at a data length of approx. 50 bytes, a data volume ofabout 4.3 megabytes per day has to be expected.

[0058] The present invention is distinguished in that, by synchronizingthe clocks of the two measuring computers 26, 28, precise enoughmeasurements may now be taken in a simple fashion to record the packetdelay, delay-time fluctuations, and the like.

[0059] Reference Symbol List

[0060]10 telecommunications network

[0061]12 switching device

[0062]14 switching device

[0063]16 switching device

[0064]18 switching device

[0065]20 switching device

[0066]22 switching device

[0067]24 transmission line

[0068]26 first measuring computer

[0069]28 second measuring computer

[0070]30 gps unit

[0071]32 measurement path

[0072]34 control computer

[0073]36 database

[0074]38 additional computer, work station

[0075] D_(network) packet delay

[0076] D_(soft) computer-specific time component—total

[0077] T_(jitter) delay-time fluctuation

[0078] T₁ timing mark for test packet departure

[0079] T₂ timing mark for test packet arrival

[0080] • measurement error

[0081] Cv_(src) computer-specific time component—first measuringcomputer

[0082] CV_(dest) computer-specific time component—second measuringcomputer

What is claimed is:
 1. A method for measuring unidirectionaltransmission properties, such as packet delay (Dnetwork), delay-timefluctuations (tjitter), and results derivable therefrom, in atelecommunications network (10), such as the Internet, an intranet, orthe like, between at least two measuring computers (26, 28), where testpackets are transmitted from a first measuring computer (26) to aanother, second measuring computer (28), the first measuring computer(26) recording the departure time (t1) of the outgoing test packet, andtransmitting this clock time along with the test packet, and the secondmeasuring computer (28) recording the arrival time (t2) of the testpacket, and, in a subtraction operation between the departure time fromthe first measuring computer (26) and the arrival time in the secondmeasuring computer (28), the delay time (Dnetwork) of the test packet,[i.e.,] the measuring result, being determined, wherein to determine themeasuring result, the two measuring computers (26, 28) are synchronizedin time by satellite systems (30), for example by a GPS (globalpositioning system), in that the clock time is continuously transmittedby a plurality of satellites to both measuring computers (26, 28). 2.The method as recited in claim 1 or 2, wherein the measuring result isstored in a database (36).
 3. The method as recited in claim 2, whereinevery, in particular authorized, user can query the measuring resultsfrom the database (36) via the telecommunications network (10).
 4. Themethod as recited in claim 3, wherein an identifier is stored for theauthorized user in the database (36), and upon transmission of theidentifier by the authorized user, the querying of the measuring resultsfrom the database (36) is released.
 5. The method as recited in one ofclaims 2 through 4, wherein the measuring results are transmitted fromthe second measuring computer (28) via the telecommunications network(10) to the database (36).
 6. The method as recited in one of thepreceding claims, wherein to ascertain delay-time fluctuations(tjitter), at least two test packets are sent consecutively from thefirst measuring computer (26) to the second measuring computer (28). 7.The method as recited in one of the preceding claims, wherein testpackets are continuously transmitted from the first measuring computer(26) to the second measuring computer 28), in particular, the timeinterval from departure of the test packets from the first measuringcomputer varying.
 8. The method as recited in one of the precedingclaims, wherein data and clock information is assigned to the measuringresults and is stored accordingly in the database (36), so that it isdiscernible at which points in time which measuring results occurred. 9.The method as recited in one of the preceding claims, wherein for everymeasuring computer (26, 28), the computer-specific time component(Dsoft, CVsrc, CVdest) required by the software and the operating systemof this measuring computer (26, 28) to handle the test packet in themeasuring computer (26, 28) until the departure or arrival time isascertained, is determined.
 10. The method as recited in claim 8,wherein the computer-specific time component (Dsoft) is subtracted fromthe delay time, and the result corresponds to the true delay time(Dnetwork), the true delay time (Dnetwork) then forming the measuringresult.
 11. The method as recited in one of the preceding claims,wherein a control computer (34) is provided, which, via thetelecommunications network (10), controls the measuring computers (26,28) for determining the measuring result, such as establishing themeasuring connections, initiating transfer of the measuring results tothe database (36), determining the status of the measuring computers(26, 28), and the like.
 12. The method as recited in claim 11, whereinno test packets are recorded during the transmission of data from onemeasuring computer (26, 28) to the control computer (34).
 13. The methodas recited in one of the preceding claims, wherein besides the delaytime (Dnetwork) and the delay-time fluctuations (tjitter), lossesoccurring during transmission of the test packets are also ascertainedand are stored accordingly as measuring results in the database (36).14. A device for implementing the method as recited in one of thepreceding claims.